-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reworks Curtains #28163
base: master
Are you sure you want to change the base?
Reworks Curtains #28163
Conversation
The resprite could probably be a separate PR, or at the very least mentioned in the PR description. |
Co-authored-by: CRUNCH <[email protected]> Signed-off-by: Tojo <[email protected]>
WOOOOOOOOO TIME TO MIGRATE THE ENTIRETY OF ITEM/MOUNTED TO THE NEW ATTACKCHAIN |
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
Co-authored-by: Burzah <[email protected]> Signed-off-by: Tojo <[email protected]>
|
||
/obj/item/mounted/curtain/curtain_fixture/interact_with_atom(atom/target, mob/living/user, list/modifiers) | ||
. = ..() | ||
if(!istype(target,/obj/structure/window) && !istype(target,/turf/simulated/wall/)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if(!istype(target,/obj/structure/window) && !istype(target,/turf/simulated/wall/)) | |
if(!istype(target ,/obj/structure/window) && !istype(target, /turf/simulated/wall/)) |
if(!istype(target,/obj/structure/window) && !istype(target,/turf/simulated/wall/)) | ||
return | ||
var/on_wall = get_turf(target) | ||
to_chat(user, "<span class='notice'>You begin attaching [src] to the [on_wall].</span>") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
to_chat(user, "<span class='notice'>You begin attaching [src] to the [on_wall].</span>") | |
to_chat(user, "<span class='notice'>You begin attaching [src] to [on_wall].</span>") |
user.visible_message("<span class='notice'>[user] attaches the [src] to the [on_wall].</span>", \ | ||
"<span class='notice'>You attach the [src] to the [on_wall].</span>") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
user.visible_message("<span class='notice'>[user] attaches the [src] to the [on_wall].</span>", \ | |
"<span class='notice'>You attach the [src] to the [on_wall].</span>") | |
user.visible_message("<span class='notice'>[user] attaches the [src] to [on_wall].</span>", \ | |
"<span class='notice'>You attach the [src] to [on_wall].</span>") |
return | ||
if(!Adjacent(user)) | ||
return | ||
// TODO: turn back into assembly item |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO here, planning on doing it in this PR?
. += "<span class='notice'>Alt-Click to take it down.</span>" | ||
|
||
/obj/structure/curtain/assembly/AltClick(mob/user) | ||
if(user.incapacitated()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if(user.incapacitated()) | |
if(HAS_TRAIT(user, TRAIT_HANDS_BLOCKED)) |
if(opacity) | ||
icon_state = "closed" | ||
overlay = image("closed_overlay") | ||
overlay.color = overlay_color | ||
overlay.alpha = overlay_alpha | ||
add_overlay(overlay) | ||
layer = SHOWER_CLOSED_LAYER | ||
else | ||
icon_state = "open" | ||
overlay = image("open_overlay") | ||
overlay.color = overlay_color | ||
overlay.alpha = overlay_alpha | ||
add_overlay(overlay) | ||
layer = SHOWER_OPEN_LAYER |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you move these to an update_overlays()
call (and similar procs for the other things) and use the update_appearance()
framework? I see this is duplicated
What Does This PR Do
Reworks curtains. Makes Curtains a craftable fixture, like light tubes. Craft with Iron Rod, can put on walls, windows, or use in your hand to put it where you're standing on the ceiling. Apply cloth to turn into normal curtain. Use wirecutters to revert to assembly. Alt click assembly to turn into fixture item.
Additionally Resprites them.
Why It's Good For The Game
Eases the placement of curtains, removes them from the realm of the crafting menu. No more deconstructing the window to put up a curtain.
Images of changes
2025-01-28.02-12-06_edit.mp4
Testing
Did all of the interactions, works. I also made it compatible with borgs. You're welcome, Crunch.
Declaration
Changelog
🆑
tweak: Reworks Curtains
/:cl: